package com.company;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Stack;

public class Main {

    public static void main(String[] args) {
        Solution solution = new Solution();
        SolutionDp solutionDp = new SolutionDp();
        int[] nums = new int[]{1, 2, 3};
        int[][] num = {{-37, 51, -36, 34, -22}, {82, 4, 30, 14, 38}, {-68, -52, -92, 65, -85}, {-49, -3, -77, 8, -19}, {-60, -71, -21, -62, -73}};


        List<List<Integer>> names = new ArrayList<>() {{
            add(Arrays.asList(2));
            add(Arrays.asList(3, 4));
            add(Arrays.asList(6, 5, 7));
            add(Arrays.asList(4, 1, 8, 3));
        }};

        //System.out.print(solution.isMatchTwo("abcdef","a*c*f"));
        //m = 2, n = 2, maxMove = 2, startRow = 0, startColumn = 0
        System.out.println(solutionDp.findPaths(3, 3, 6, 0, 1));
        System.out.println(solutionDp.findPathsTwo(3, 3, 3, 0, 1));

        //System.out.println(Arrays.toString(x));

        //System.out.println(solution.generateParenthesis(3));
        // ListNode l1 = new ListNode(1);
        // ListNode l12 = new ListNode(2);
        // ListNode l14 = new ListNode(3);
        // ListNode l13 = new ListNode(4);
        //
        // l1.next = l12;
        // l12.next = l14;
        // l14.next = l13;
        //
        // ListNode l2 = new ListNode(1);
        // ListNode l22 = new ListNode(3);
        // ListNode l23 = new ListNode(4);
        // l2.next = l22;
        // l22.next = l23;
        // ListNode listNode = solution.reverseKGroup(l1, 2);
        //
        // while (listNode != null) {
        //     System.out.println(listNode.val);
        //     listNode = listNode.next;
        // }
    }

}


